package com.fowo.api.model.amz.advertis.auth.info;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fowo.api.common.validator.*;
import io.swagger.v3.oas.annotations.media.Schema;
import javax.validation.constraints.*;
import lombok.Getter;
import lombok.Setter;

/**
 * 亚马逊广告授权信息 预览导入辅助模型(全字段为文本类型)
 * @author yl_ls
 */
@Getter
@Setter
public class AmzAdvertisAuthInfoImportPo {

  /** 站点市场id */
  @ExcelProperty("站点市场id")
  @Size(max = 50, message = "站点市场id长度不能超过50")
  private String marketplaceStringId;

  /** 时区 */
  @ExcelProperty("时区")
  @Size(max = 50, message = "时区长度不能超过50")
  private String timezone;

  /** 国家账户id */
  @ExcelProperty("国家账户id")
  @LongString(message = "国家账户id数值格式不正确", label = "国家账户id")
  private String profileId;

  /** 国家代码 */
  @ExcelProperty("国家代码")
  @Size(max = 10, message = "国家代码长度不能超过10")
  private String countryCode;

  /** 货币代码 */
  @ExcelProperty("货币代码")
  @Size(max = 10, message = "货币代码长度不能超过10")
  private String currencyCode;

  /** 每日预算 */
  @ExcelProperty("每日预算")
  @DecimalString(message = "每日预算小数格式不正确", label = "每日预算")
  private String dailyBudget;

  /** 卖家id */
  @ExcelProperty("卖家id")
  @Size(max = 50, message = "卖家id长度不能超过50")
  private String sellerId;

  /** 账号类型 */
  @ExcelProperty("账号类型")
  @Size(max = 20, message = "账号类型长度不能超过20")
  private String type;

  /** 账号性名 */
  @ExcelProperty("账号性名")
  @Size(max = 50, message = "账号性名长度不能超过50")
  private String name;

  /** 付款方式是否有效 */
  @ExcelProperty("付款方式是否有效")
  @BooleanString(message = "付款方式是否有效格式不正确，请使用“是”，“否”")
  private String validPaymentMethod;

  /** 刷新令牌 */
  @ExcelProperty("刷新令牌")
  @Size(max = 1000, message = "刷新令牌长度不能超过1000")
  private String refreshToken;

  /** 店铺id */
  @ExcelProperty("店铺id")
  @Size(max = 50, message = "店铺id长度不能超过50")
  private String sidShopName;

  @ExcelIgnore
  @Schema(title = "店铺id")
  private String sid;
}
